package com.xuecheng.api.teaching;


import com.xuecheng.api.comment.model.dto.CommentDTO;
import com.xuecheng.api.comment.model.qo.CommentModel;
import com.xuecheng.api.teaching.model.dto.CompanyDTO;
import com.xuecheng.api.teaching.model.qo.QueryCompanyModel;
import com.xuecheng.api.teaching.model.vo.CompanyVO;
import com.xuecheng.common.domain.page.PageRequestParams;
import com.xuecheng.common.domain.page.PageVO;
import com.xuecheng.common.domain.response.RestResponse;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;

@Api ( value = "教学机构管理" )
public interface CompanyApi {

    @ApiOperation(value = "机构申请入驻")
    public RestResponse saveCompany(@RequestBody CompanyVO companyVO);

    @ApiOperation ( value = "根据租户id获取教学机构信息" )
    @ApiImplicitParam ( name = "tenantId", value = "租户id", required = true, example = "1", dataType = "Long", paramType = "path" )
    public CompanyDTO getByTenantId(@PathVariable ( "tenantId" ) Long tenantId);


    @ApiOperation ( value = "机构列表查询" )
    PageVO<CommentDTO> queryCompanyList(PageRequestParams params, @RequestBody QueryCompanyModel model);

    @ApiOperation ( value = "用户评论列表查询" )
    PageVO<CommentDTO> queryCommentList(PageRequestParams params, @RequestBody CommentModel commentModel);

    @ApiOperation ( value = "机构评论列表查询" )
    PageVO<CommentDTO> queryCourseCommentList(PageRequestParams params, @RequestBody CommentModel commentModel);

}
